<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of teste
 *
 * @author Lucas Pinheiro
 */
class Dashboard extends Admin {

    public function __construct() {
        parent::__construct();
    }

    public function index() {
        $this->parser->set_title_pagina( 'Dashboard', 'adm/dashboard' );
        $this->parser->set_title( 'Dashboard' );
        $this->load->language( 'dashboard/layout' );
        $this->parser->set_msg( 'teste' );
        $this->parser->site_view( 'dashboard', array( ) );
    }

    public function menu_horizontal() {
        $v_dados = array( );
        $v_dados['nome'] = $this->session->userdata( 'usuario_nome' );
        $v_dados['descricao'] = $this->session->userdata( 'usuario_descricao' );
        $v_dados['id'] = $this->session->userdata( 'usuario_id_pessoas' );
        $v_dados['layout_menssages'] = $this->lang->line( 'layout_menssages' );
        $v_dados['layout_logout'] = $this->lang->line( 'layout_logout' );
        //$v_dados['layout_title'] = $this->lang->line('layout_title');
        $v_dados['layout_title'] = ucfirst( $this->uri->segment( 4 ) );
        $v_dados['layout_admin_modulo'] = ucfirst( $this->uri->segment( 3 ) );
        $v_dados['layout_admin_href'] = $this->uri->segment( 2 ) . '/' . $this->uri->segment( 3 ) . '/' . $this->uri->segment( 4 );
        $v_dados['layout_admin'] = $this->lang->line( 'layout_admin' );

        return $this->parser->parse( 'dashboard/menu_horizontal', $v_dados, true );
    }

    public function menu_vertical() {
        $v_dados = array( );
        $v_dados['nome'] = $this->session->userdata( 'usuario_nome' );
        $v_dados['descricao'] = $this->session->userdata( 'usuario_descricao' );
        $v_dados['id'] = $this->session->userdata( 'usuario_id_pessoas' );
        $v_dados['layout_quick_search'] = $this->lang->line( 'layout_quick_search' );
        $v_dados['menu'] = $this->_lista_menu();
        return $this->parser->parse( 'dashboard/menu_vertical', $v_dados, true );
    }

    public function header() {
        $v_dados = array( );
        $v_dados['usuario'] = $this->session->userdata( 'usuario_username' );
        $v_dados['nome'] = $this->session->userdata( 'usuario_nome' );
        $v_dados['layout_title'] = $this->config->item('titulo_cms');
        $v_dados['layout_view_site'] = $this->lang->line( 'layout_view_site' );
        $v_dados['layout_admin'] = $this->lang->line( 'layout_admin' );
        return $this->parser->parse( 'dashboard/header', $v_dados, true );
    }

    public function footer() {
        return $this->parser->parse( 'dashboard/footer', array( ), true );
    }

    private function _lista_menu() {

        $this->load->model( 'usuarios/menu_model' );

        $params = array( );
        $params['CAMPOS'] = 'me.*, mo.title as mo_title';
        $params['AND']['me.status'] = 1;
        $params['ORDERBY'] = 'mo.title, me.title';
        $params['JOIN'][] = array(
            'TABELA' => $this->config->item( 'tblModulo' ) . ' as mo',
            'AND' => 'mo.id_modulo = me.id_modulo',
            'TIPO' => 'INNER',
        );
        $b_consultar = $this->menu_model->consultar( $params );
        $v_dados = array( );
        if( $b_consultar != NULL ) {
            foreach( $b_consultar as $k => $v ) {
                $v_dados[$v->id_modulo]['mo_title'] = $v->mo_title;
                $v_dados[$v->id_modulo]['mo_title_ativo'] = '';
                $v_dados[$v->id_modulo]['tipo'][$k]['class_icon'] = $v->class_icon;
                $v_dados[$v->id_modulo]['tipo'][$k]['id_menu'] = $v->id_menu;
                $v_dados[$v->id_modulo]['tipo'][$k]['nova_rota'] = $v->nova_rota;
                $v_dados[$v->id_modulo]['tipo'][$k]['pai'] = $v->pai;
                $v_dados[$v->id_modulo]['tipo'][$k]['status'] = $v->status;
                $v_dados[$v->id_modulo]['tipo'][$k]['title'] = $v->title;
                $v_dados[$v->id_modulo]['tipo'][$k]['url'] = $v->url;
            }

            global $RTR;
            $APPPATH = str_replace( '\\', '/', APPPATH );
            $dir = str_replace( '/controllers', '', str_replace( $APPPATH . 'modules/', '', $RTR->fetch_directory() ) ) . $RTR->fetch_class() . '/' . $RTR->fetch_method();

            $params = array( );
            $params['CAMPOS'] = 'me.*, mo.title as mo_title';
            $params['AND']['me.url'] = $dir;
            $params['ORDERBY'] = 'mo.title, me.title';
            $params['JOIN'][] = array(
                'TABELA' => $this->config->item( 'tblModulo' ) . ' as mo',
                'AND' => 'mo.id_modulo = me.id_modulo',
                'TIPO' => 'INNER',
            );
            $b_consultar = $this->menu_model->get( $params );

            if( $b_consultar != NULL ) {
                $v_dados[$b_consultar->id_modulo]['mo_title_ativo'] = 'toggleLinkAtivo';
            }
        }
        return $v_dados;
    }

}
